package com.daoeping.domain;

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

/**
 * Bzn_jobdescription entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "bzn_jobdescription", catalog = "daoeping")

public class Bzn_jobdescription implements java.io.Serializable {

	// Fields

	private Integer id;
	private String title;
	private Integer numberOfRecruits;
	private String description;
	private Date createdDate;
	private Date updateDate;
	private Integer releaseFlag;
	private Integer deleteFlag;
	
	private Usr_user usr_user;
	private Cop_companyinfo cop_companyinfo;
	private Bsc_industry bsc_industry;
	private Bsc_jobtype bsc_jobtype;
	private Bsc_worktype bsc_worktype;
	private Bsc_city bsc_city;
	private Bsc_workyear bsc_workyear;
	private Bsc_salary bsc_salary;
	private Bsc_educational bsc_educational;
	private Bsc_specialty bsc_specialty;
	private Bsc_certificate bsc_certificate;
	private Bsc_language bsc_language;
	private Bsc_skill bsc_skill;
	private Cop_group cop_group;


	// Constructors

	/** default constructor */
	public Bzn_jobdescription() {
	}

	/** minimal constructor */
	public Bzn_jobdescription(String title, Cop_companyinfo cop_companyinfo) {
		this.title = title;
		this.cop_companyinfo = cop_companyinfo;
	}

	/** full constructor */
	public Bzn_jobdescription(String title, Cop_companyinfo cop_companyinfo,
			Bsc_industry bsc_industry, Bsc_jobtype bsc_jobtype, Bsc_worktype bsc_worktype,
			Bsc_city bsc_city, Bsc_workyear bsc_workyear, Bsc_salary bsc_salary,
			Bsc_educational bsc_educational, Integer numberOfRecruits,
			Bsc_specialty bsc_specialty, Bsc_certificate bsc_certificate, Bsc_language bsc_language,
			Bsc_skill bsc_skill, String description, Date createdDate,
			Date updateDate, Usr_user usr_user, Cop_group cop_group,
			Integer releaseFlag, Integer deleteFlag) {
		this.title = title;
		this.cop_companyinfo = cop_companyinfo;
		this.bsc_industry = bsc_industry;
		this.bsc_jobtype = bsc_jobtype;
		this.bsc_worktype = bsc_worktype;
		this.bsc_city = bsc_city;
		this.bsc_workyear = bsc_workyear;
		this.bsc_salary = bsc_salary;
		this.bsc_educational = bsc_educational;
		this.numberOfRecruits = numberOfRecruits;
		this.bsc_specialty = bsc_specialty;
		this.bsc_certificate = bsc_certificate;
		this.bsc_language = bsc_language;
		this.bsc_skill = bsc_skill;
		this.description = description;
		this.createdDate = createdDate;
		this.updateDate = updateDate;
		this.usr_user = usr_user;
		this.cop_group = cop_group;
		this.releaseFlag = releaseFlag;
		this.deleteFlag = deleteFlag;
	}

	// Property accessors
	@Id
	@GeneratedValue
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@Column(name = "title", nullable = false, length = 200)
	public String getTitle() {
		return this.title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	@Column(name = "number_of_recruits")
	public Integer getNumberOfRecruits() {
		return this.numberOfRecruits;
	}

	public void setNumberOfRecruits(Integer numberOfRecruits) {
		this.numberOfRecruits = numberOfRecruits;
	}

	@Column(name = "description", length = 4000)
	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "created_date", length = 10)
	public Date getCreatedDate() {
		return this.createdDate;
	}

	public void setCreatedDate(Date createdDate) {
		this.createdDate = createdDate;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "update_date", length = 10)
	public Date getUpdateDate() {
		return this.updateDate;
	}

	public void setUpdateDate(Date updateDate) {
		this.updateDate = updateDate;
	}

	@Column(name = "release_flag")
	public Integer getReleaseFlag() {
		return this.releaseFlag;
	}

	public void setReleaseFlag(Integer releaseFlag) {
		this.releaseFlag = releaseFlag;
	}

	@Column(name = "delete_flag")
	public Integer getDeleteFlag() {
		return this.deleteFlag;
	}

	public void setDeleteFlag(Integer deleteFlag) {
		this.deleteFlag = deleteFlag;
	}

	
	@ManyToOne
	@JoinColumn(name = "user_id")
	public Usr_user getUsr_user() {
		return usr_user;
	}

	public void setUsr_user(Usr_user usr_user) {
		this.usr_user = usr_user;
	}

	@ManyToOne
	@JoinColumn(name = "company_id")
	public Cop_companyinfo getCop_companyinfo() {
		return cop_companyinfo;
	}

	public void setCop_companyinfo(Cop_companyinfo cop_companyinfo) {
		this.cop_companyinfo = cop_companyinfo;
	}

	@ManyToOne
	@JoinColumn(name = "industry_id")
	public Bsc_industry getBsc_industry() {
		return bsc_industry;
	}

	public void setBsc_industry(Bsc_industry bsc_industry) {
		this.bsc_industry = bsc_industry;
	}

	@ManyToOne
	@JoinColumn(name = "job_type_id")
	public Bsc_jobtype getBsc_jobtype() {
		return bsc_jobtype;
	}

	public void setBsc_jobtype(Bsc_jobtype bsc_jobtype) {
		this.bsc_jobtype = bsc_jobtype;
	}

	@ManyToOne
	@JoinColumn(name = "work_type_id")
	public Bsc_worktype getBsc_worktype() {
		return bsc_worktype;
	}

	public void setBsc_worktype(Bsc_worktype bsc_worktype) {
		this.bsc_worktype = bsc_worktype;
	}

	@ManyToOne
	@JoinColumn(name = "work_place_id")
	public Bsc_city getBsc_city() {
		return bsc_city;
	}

	public void setBsc_city(Bsc_city bsc_city) {
		this.bsc_city = bsc_city;
	}
	
	
	

	@ManyToOne
	@JoinColumn(name = "work_year_id")
	public Bsc_workyear getBsc_workyear() {
		return bsc_workyear;
	}

	

	public void setBsc_workyear(Bsc_workyear bsc_workyear) {
		this.bsc_workyear = bsc_workyear;
	}

	@ManyToOne
	@JoinColumn(name = "salary_value_id")
	public Bsc_salary getBsc_salary() {
		return bsc_salary;
	}

	public void setBsc_salary(Bsc_salary bsc_salary) {
		this.bsc_salary = bsc_salary;
	}

	@ManyToOne
	@JoinColumn(name = "educational_level_id")
	public Bsc_educational getBsc_educational() {
		return bsc_educational;
	}

	public void setBsc_educational(Bsc_educational bsc_educational) {
		this.bsc_educational = bsc_educational;
	}

	@ManyToOne
	@JoinColumn(name = "specialty_id")
	public Bsc_specialty getBsc_specialty() {
		return bsc_specialty;
	}

	public void setBsc_specialty(Bsc_specialty bsc_specialty) {
		this.bsc_specialty = bsc_specialty;
	}

	@ManyToOne
	@JoinColumn(name = "certificate_id")
	public Bsc_certificate getBsc_certificate() {
		return bsc_certificate;
	}

	public void setBsc_certificate(Bsc_certificate bsc_certificate) {
		this.bsc_certificate = bsc_certificate;
	}

	@ManyToOne
	@JoinColumn(name = "language_id")
	public Bsc_language getBsc_language() {
		return bsc_language;
	}

	public void setBsc_language(Bsc_language bsc_language) {
		this.bsc_language = bsc_language;
	}

	@ManyToOne
	@JoinColumn(name = "skill_id")
	public Bsc_skill getBsc_skill() {
		return bsc_skill;
	}

	public void setBsc_skill(Bsc_skill bsc_skill) {
		this.bsc_skill = bsc_skill;
	}
	
	@ManyToOne
	@JoinColumn(name = "contact_id")
	public Cop_group getCop_group() {
		return cop_group;
	}

	public void setCop_group(Cop_group cop_group) {
		this.cop_group = cop_group;
	}

}